perm filename DIRED.DON[UP,DOC]15 blob sn#781251 filedate 1984-12-29 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00032 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00005 00002	Throughout this documentation, unless otherwise stated, these mappings apply:
C00007 00003	How to use DIRED to read this documentation
C00009 00004	New features and/or bugfixes, in reverse chronological order
C00032 00005	Quick summary of all commands (sorted by "Stanford Ascii") see also page 32.
C00034 00006	General information about DIRED (type 7? for general info on using DIRED)
C00036 00007	General information on using DIRED
C00038 00008	Interpreting the display
C00044 00009	Command-line syntax
C00047 00010	Command-line switches
C00053 00011	DIRED's use of OPTION.TXT and macros
C00065 00012	Window/cursor-moving commands
C00067 00013	Page-changing commands
C00071 00014	Directory-editing commands (apply to SINGLE FILE by default see page 15)
C00075 00015	Numeric arguments to αβD, etc.
C00079 00016	File-displaying/editing commands
C00086 00017	Wildcard file specifications
C00088 00018	File masks and invisible files
C00093 00019	Visibility-related commands (see page 18 for a discussion of invisibility)
C00098 00020	Mask-changing command (see page 18 for a discussion of invisibility)
C00101 00021	Sort command (S)
C00103 00022	Sort/info keys (+/- = ascending/descending sort or add/omit info field)
C00107 00023	String-search commands
C00110 00024	Exiting and doing actions
C00116 00025	Miscellaneous commands
C00119 00026	Extended commands (entered via the X or / command)
C00121 00027	Extended directory-editing and file-displaying commands (see pages 14 and 16)
C00127 00028	Extended forms of miscellaneous one-character commands
C00131 00029	Miscellaneous extended commands (see also non-display commands on page 30)
C00136 00030	Extended non-display commands (here "TTY" is used to mean any non-display)
C00140 00031	The following features are not yet implemented, but probably will be some day.
C00141 00032	This page is rather time-consuming when displayed using DIRED's ? command.  It
C00166 ENDMK
C⊗;
Throughout this documentation, unless otherwise stated, these mappings apply:
  α = <control>     β = <meta>     ⊗ = either <control> or <control><meta>
  # = any unsigned decimal number or ∞ (in "⊗#" the ⊗ applies to every digit)

For a brief summary of commands useful perusing this documentation, type ⊗3⊗?.

Type:	For information on:		   Type:   For information on:
⊗4⊗?	Most recent new features	   ⊗1⊗7⊗?  Wildcard file names
⊗5⊗?	Quick summary of all commands	   ⊗1⊗8⊗?  File masks & invisible files
⊗6⊗?	What DIRED's all about		   ⊗1⊗9⊗?  Visibility-related commands
⊗8⊗?	Interpreting the display	   ⊗2⊗0⊗?  Mask-changing command (αβM)
⊗9⊗?	Command-line syntax		   ⊗2⊗1⊗?  Sort command (⊗S)
⊗1⊗0⊗?	Command-line switches		   ⊗2⊗2⊗?  Sort/info keys
⊗1⊗1⊗?	DIRED's use of OPTION.TXT/macros   ⊗2⊗3⊗?  String-search commands
⊗1⊗2⊗?	Window/cursor-moving commands	   ⊗2⊗4⊗?  Exiting and doing actions
⊗1⊗3⊗?	Page-changing commands		   ⊗2⊗5⊗?  Miscellaneous other commands
⊗1⊗4⊗?	Directory-editing commands	   ⊗2⊗6⊗?  Extended commands
⊗1⊗5⊗?	Numeric arguments to αβD, etc.	   ⊗3⊗1⊗?  Coming attractions
⊗1⊗6⊗?	File-displaying/editing commands   ⊗3⊗2⊗?  Absolutely everything

		  Type αH to get back to the regular display.
How to use DIRED to read this documentation

If you are on a non-display, the first 10 lines of a page will be typed each
time you go to a new page.  To see the rest of the page, type ∞X TYPE <cr>.
(Leaving off the "∞" will give you 10-line chunks.)  Commands for use on
non-displays are summarised on page 30.  "P" takes you to the next page,
"#?" to the #th page of the documentation.

For display users, the ⊗#⊗? command (described in more detail on page 16) shows
the #th page of this file.  Often the entire page won't fit on your screen; the
command <ff> (↑L on Datamedias) can be used to see successive "windows" of the
text.  The command <vt> goes back to the previous window; ⊗L goes to the top of
the page.  Complete documentation on these and related commands may be found on
page 12, but these few should suffice to get you started.  Also, once you are
looking at a page of the documentation, the command ⊗P moves you to the next.

The command αH (on non-displays, H) "homes" you back to the directory display.
New features and/or bugfixes, in reverse chronological order

∂29 Dec 84 -- Spooling to Boise, Imprint; changes to spooling commands

* DIRED now lets you spool to any of LPT, XGP, Dover, Boise, or Imprint.  If the
  specified printer does not exist at your site, DIRED tells you so and does not
  try to spool to it.
* The extended commands DOVER, LSPOOL, PRESS, and XSPOOL have been removed, as
  have the single-character commands ⊗β, ⊗↔, and ⊗}.  To specify which printer
  you want to use, use the extended SPOOL command:  SPOOL <dev>←<file>.  After
  using the extended command once, you can continue to spool to the same printer
  by using the new single-character command ⊗$.  The command ⊗0⊗$ tells you what
  the current default printer is.
* You cannot spool a single file to more than one printer at a time, though you
  may have different files spooled to different printers.  If you try to spool
  a file to a second printer, you will be asked whether to override the first
  spool request.
* The "S" column in the display shows the initial of the printer type to which
  each file is spooled (currently X, L, D, B, or I).
* The current user interface for these new commands is experimental.  Comments
  are solicited.  (Send them to BUG-DIRED@SAIL.)

∂09 Dec 84 -- Minor bugfixes

* The number of buffers to use for optimum efficiency in disk I/O, and the track
  size to use for reporting file sizes in disk "blocks", are now computed based
  on the particular device involved, since UDPs may differ from the main disks.
* Bugfix (previously installed as patch) such that DIRED no longer gets into a
  funny state if you type ESC-FORMFEED (clear screen) immediately after typing
  the DRD command.
* Bugfix (previously installed as patch) to avoid crash if an operation (such as
  ⊗X DELETE) asks for confirmation partway through and needs to update the
  display to reflect what's been done so far.
* Bugfix so that above-mentioned fix doesn't break ⊗X REREAD.
* Bugfix (previously installed as patch) to recover gracefully if ⊗∃ tries to
  examine a file that has "bad retrieval".

∂28 Jun 83 -- Minor bugfixes, merged SU-AI and CCRMA versions

* A single source (and single DMP file) now works at both SU-AI and CCRMA, as
  well as at S1-A.  The CCRMA Grinnell displays are slightly different from the
  SAIL DataDiscs.  CCRMA users are invited to send gripes to BUG-DIRED@SAIL.
* DIRED now correctly interprets the error generated when attempting to rename
  or reap a file that someone else is currently reading.
* The trailer now correctly displays masks containing ∀, ∃, and _.  (This fix
  won't work until a matching WAITS change is implemented, but nothing fatal
  will happen in the meanwhile.)

∂21 May 82 -- Dover spooling, better DM updating, macros, and more!

* It is now possible to spool files to the Dover as well as to the XGP and LPT.
  Files spooled to the Dover are put on the "P" page (for Press; D was already
  being used), analogous to the X and L pages.  The command for Pressing a file
  is ⊗} ("}" is <top>P on Stanford keyboards), with extended forms PRESS and
  DOVER.  Fonts and interline spacing specified via the ⊗X FONT command, which
  formerly affected only XGP spooling, now affects both XGP and Dover spooling.
  Note that font names and spacing units for the two devices are incompatible;
  if you're spooling to both devices, do ⊗. inbetween or avoid ⊗X FONT (thereby
  getting the system default fonts and spacing).
* The display routines were overhauled.  The most significant changes affect
  only DMs, but DD display has improved also.  Screen updates are now collected
  into a single display program; formerly the header/window/trailer/arrow were
  updated individually, and there could be delays in the middle of the update.
  Thus the initialisation messages are put up and taken down more quickly, and
  you no longer have DD displays where the files listed in the window change
  long before the arrow is moved to correspond to the new listing.  Further, on
  DMs, additional commands can be typed before the display is done updating, and
  in many cases -- when the display is about to be nearly completely redrawn
  anyway -- DIRED won't bother finishing the previous display and will simply
  redraw the screen immediately (as does E).  This should make DM directory
  editing much faster.  Finally, the DM screen is cleared only once at startup
  (it used to be cleared once by DIRED and once by the system).
* The rudimentary macro facility formerly provided by the /OPTION=# switch has
  been expanded in two ways.  First, macros can be executed later in the session
  via either the ⊗Y command (to execute macros from OPTION.TXT) or ⊗Z to execute
  macros from another file.  Second, the /OPTION switch can specify a file other
  than OPTION.TXT for macros and other startup switches.  To provide this in a
  reasonable manner, the syntax of the /OPTION switch has been changed
  INCOMPATIBLY.  Anyone who uses the /OPTION switch, or who wishes to use the
  new macro features, should see the details on page 11.
* New startup switch /UNSORTED causes the files to be listed in the order of
  their appearance in their respective directories, with directories ordered
  according to the master directory.  This mode is useful for debugging programs
  that process files in directory order.  See page 10 for details and caveats.
* Documentation expanded slightly to include a cross-reference from the initial
  switches (such as /PARANOID or /VERIFY) to the commands that change them.
* Bugfix to get "OK" and similar responses to come out on non-displays without
  waiting for the next command to be typed (bug introduced by previous display-
  related changes).
* Bugfix (previously installed as patch) to make sure initial display gets drawn
  when the system DRD command was followed by one or more lines of type-ahead.
* Bugfix (previously installed as patch) to avoid redrawing the arrow on DD's
  after each command (used to redraw even if the arrow didn't move).

∂13 Apr 82 -- Screen updated whenever waiting for input; storage reduced

* The screen is now updated whenever DIRED is waiting for input.  Previously, it
  was updated only when a new command character was needed and there was none
  yet available.  It was thus possible to have a command request "secondary"
  input (such as the extended command after "⊗X" or the file name after "⊗R")
  and, if the initial ⊗X or ⊗R or whatever was typed ahead, the screen would not
  be updated while you typed in the additional info.  Now, however, you can
  always see what file it is you're about to do something to.
* DIRED no longer computes the display text for all files in all directories
  read.  It used to do this during initialisation, because computing all of the
  strings at one time is more efficient than computing them piecemeal.  However,
  most of the strings are never used, particularly if the file mask excludes
  some files within the directories.  The strings are now computed only when
  needed, either for display or in order to update them to reflect changes made
  by such commands as Rename or Delete.  If you turn out to display all of the
  strings anyway, you suffer a small loss of efficiency, but in almost all cases
  the new allocate-only-when-needed scheme is a net win.
* As a result of the reduced storage noted above, it is now possible to read in
  directories containing a total of about 5900 files as compared to the previous
  limit of about 3400.  If you get too close to this limit, however, you'll run
  out of space for the strings should you try to display very many of the file
  entries.
* The "working" message no longer comes out after you hit CALL to stop whatever
  DIRED is doing.  (If you then CONTINUE, it will be printed as usual.)

∂18 Oct 81 -- File sizes shown in blocks; other misc bugfixes and features

* File sizes are now displayed in blocks instead of in words.  You can get the
  sizes in words using the /WORDS switch at startup, or with the extended
  ⊗XINFO/WORDS command.  The /KMODE (or /K) switch still gives sizes in K-words,
  and the /BLOCKS switch restores the default.  The column heading reflects the
  current mode: Size (blocks), Words, or K-wds.
* The verify-mode confirmation request now specifies the type(s) of operation
  requiring confirmation.
* The ⊗O command now requires confirmation before overwriting an existing file.
  The confirmation message can be bypassed using the /Q switch.
* DIRED no longer erases or resets a display screen running DIRED via a PTY.
* Bugfix, previously installed as patch, that sometimes caused DIRED to crash
  if a file was to be renamed as well as being reaped.
* Bugfix to prevent line overflow in ⊗XNUMBER mode on non-displays.

∂12 Mar 81 -- Minor bugfixes

* Bugfix to handle reap+rename+reprotect when new name is that of a file being
  deleted.  (Previously failed to do the reap.)
* Bugfix (previously installed as patch) to prevent possible bomb-out when
  running action lists that include reap & rename on a single file.

∂5 May 80 -- Minor bugfixes

* The size of a disk track (for computing tracks freed by deletions) is now read
  from the new system low-core word ('346).  The optimum number of buffers for
  disk I/O is likewise picked up from there.  This is so that DIRED can work on
  CCRMA's version of WAITS, where these values are different.
* Fix to get around system bug that interfered with a single file's being
  renamed to another PPN and also having its protection changed.
* Documentation updated to note that files created by ⊗O (or equivalent extended
  commands) are added at the bottom of the file list (if they match the current
  file mask at all).

∂8 Apr 80 -- New extended HIDE/REAP, αH to exit file-display mode, and more

* The extended HIDE command now accepts a /REAPED switch (at present, /R is
  sufficient), that tells it to affect only files that are marked for reaping.
  This includes files that were already so marked when you entered DIRED, as
  well as files that have been flagged via the extended REAP command.  Thus
  ⊗XHIDE/R hides all files that will (eventually) be reaped, letting you see
  what will be left.  ⊗XHIDE *.SAI/R (or ⊗XHIDE/R *.SAI) hides all reaped SAIL
  files, and so forth.  The switch can be negated (/-REAPED) to affect only
  non-reaped files (a superset of "unreaped" files!).  As with any HIDE command,
  the hidden files will reappear the next time you change the file mask.
* By popular demand, αH is now equivalent to ⊗0⊗P when in file-display mode,
  restoring the directory display.  αβH will not work (it means "Hide" in the
  directory-display mode).
* Bugfix to prevent rereading the file and redrawing the entire window when a
  ⊗#⊗P (or ⊗#⊗∃) command is given that references the current page while in
  file-display mode.
* Bugfix to ⊗XREREAD given while in file-display mode.

∂17 Feb 80 -- New command for rereading directory info; other misc bugfixes

* Extended command REREAD has been added.  It causes DIRED to throw away all the
  data it has read about directories and reread the directories occurring in the
  current mask.  If there are any actions pending they will be performed, after
  confirming that you don't object.  REREAD is intended for use in 2 situations:
  (1) You've been looking at several directories, a few at a time, and you're
  running out of core because all the ones you've looked at are kept in core (as
  invisible files) even if no longer included in the mask.  REREAD will discard
  all this excess data and do a garbage collection.  (2) Some other program has
  changed the files in a directory (or the protection on one that you tried
  unsuccessfully to read) and you want DIRED to reread the directory to get the
  new information (or to try again to read the directory, which it will normally
  refuse to do after failing once).  Note that REREAD takes no argument -- it is
  not possible to reread the directory information for a subset of the files.
* Bugfix to prevent reap/unreap from undoing rename on same file.
* Bugfix (previously installed as patch) to ⊗∃ to handle E directories with
  blank entries (pages with blank first lines).
* Bugfix (previously installed as patch) to exit code such that ⊗∃ after an
  aborted ⊗λ or ⊗ε command no longer results in a fatal I/O error.

∂15 Dec 79 -- File-display commands (⊗∃ and ⊗?) made more efficient

* The file-displaying commands ⊗∃ and ⊗? (and their extended equivalents) now
  check for an E directory when you enter file-display mode; if found, it's used
  to guide random-access input, so that the portion of the file preceeding the
  page you want need not be read as previously.  If the file purports to have a
  directory (first two lines look right) but the syntax later in the page is
  bad, or the ENDMK points to neither EOF nor the beginning of a new page, the
  directory is not used and its invalidity is reported.  Similarly, if at any
  time a record pointer from the directory turns out not to point to the start
  of a page, the directory is declared invalid and is discarded.  For files
  lacking directories, DIRED creates an incore directory as the file is read, so
  that page-changing (as long as you stay in file-display mode and don't switch
  files) is faster.  All directory information is discarded when you switch
  files or leave file-display mode.  (This obviously doesn't refer to the
  "directory" in the sense that DIRED -- directory editor -- usually intends!!)
* To take advantage of the above change, the documentation file now has an E
  directory.  This of course increases all the page numbers by one; e.g., this
  "news" page is now page 4 instead of page 3.
* As in E, a ⊗P command in file-display mode when on the last page of the file
  gives an error message and doesn't move the cursor.  (Formerly, DIRED would
  redraw the current page and put you at the top.)  ⊗<ff> in the bottom window
  of the last page is now equivalent to unbuckified <ff>, as in E; a similar
  change applies to ⊗<vt> near the top of the first page.
Quick summary of all commands (sorted by "Stanford Ascii"); see also page 32.

	      Page numbers given are for use with the ⊗? command.
Char:    Meaning:	    Char:    Meaning:		Char:    Meaning:
 ⊗∧  12  Go to top            /  25  Extended cmnd       ⊗O  25  Output page
 ⊗ε  16  Edit with E         ⊗<  12  Up 4 files          ⊗P  13  Change pages
 ⊗π  14  Protect             ⊗>  12  Down 4 files        ⊗R  14  Rename
 ⊗λ  16  Edit/READONLY       ⊗?  16  Show DIRED.DON      ⊗S  21  Sort
<vt> 12  Back a window       ⊗B  12  Glitch bottom       ⊗T  12  Glitch top
<ff> 12  Down a window       ⊗C  14  Cancel action(s)    ⊗U  25  Undo
<cr> 12  Down a file        αβD  14  Delete              ⊗V  25  Redraw
 ⊗∃  16  Display file        ⊗E  24  Exit                ⊗W  12  Down a window
 ⊗$  14  Spool               ⊗F  23  Find                ⊗X  25  Extended cmnd
 ⊗≤  12  Up 1/2 window      αβH  19  Hide                ⊗Y  11  Invoke macro
 ⊗≥  12  Down 1/2 window     ⊗I  19  Invert              ⊗Z  11  Read/call macro
 ⊗∨  12  Go to bottom        ⊗J  12  Jump window        <bs> 12  Up a file
 ⊗*  23  Repeat search       ⊗L  12  Go to line         
 ⊗.  24  Do action(s)       αβM  20  Alter mask         
General information about DIRED (type ⊗7⊗? for general info on using DIRED)

DIRED (DIRectory EDitor) is operationally similar to the text editor, E.  It
displays a list of files and lets you modify this display to modify the state of
your files.  E.g., deleting a line in the display causes the file to be deleted.
You can also rename, spool, reap, unreap, and change protection on files.  Note:
These actions are NOT done as the display is changed; the directory is untouched
until you exit or explicitly run the action lists (see page 24).

The list of files may be sorted on any of various fields (default PPN/Name/Ext).

Where applicable, DIRED's command structure has been modelled after that of E.
If you spot an apparently unintended difference, please report it as a bug in
DIRED (E takes precedence).  Report bugs via GRIPE DIRED.

Our thanks go to Stan Kugell for the original idea of a Directory Editor, and to
Martin Frost (of E fame) for helpful implementation suggestions.
General information on using DIRED

Any partially completed command can be aborted by typing <alt>.  (This will not
undo any portion of the command already done; e.g., a partially completed ⊗#αβD
command, if aborted, will leave some files still marked for deletion.)

All switches, extended commands, sort keys, etc., may be abbreviated to any
unambiguous prefix.  E.g., /QUIET can be abbreviated /Q.

DIRED will object if you attempt an operation which would violate protection on
a file or directory.  If you have the necessary privileges, you may use them to
override this objection.  The 200-protection bit on a file is a special case;
no privileges are needed to override it.  Most of these questions regarding
overriding protection (when possible) can be suppressed via /Q switches.

One last note: Don't under any circumstances alter this documentation file!  It
is maintained via another file so that cross-references are done automatically.
Interpreting the display

The information on this page pertains only to the regular DIRED display, not
to the file-display mode invoked by the ⊗∃ and ⊗? commands.

There are 5 "pages" to the DIRED display.  Each corresponds to a class of files:
[1] The Normal page lists all files which have not been marked for deletion.
[2] The Delete page lists files which have been so marked.
[3] The Rename page lists files which will be renamed or will have their
    protection changed.
[4] The Spool page lists files marked for spooling to a printer.
[5] The Harvest page lists files marked for reaping or unreaping.
Note that a file may appear on more than one page.

The top line of the display consists of column headings for the various info
fields.  The next line is the "header", and contains:
[1] the "number" (relative to the top of the list) of the top line displayed,
    unless it's the first file in the list
[2] the "name" of this page (Normal, Delete, Rename, etc.)
[3] /R if in READONLY mode, or /V if in VERIFY mode (see page 10)
[4] the total number of files on this page and their total size
[5] some subset of "N D R S H", indicating which pages other than this one
    have any files on them; the "R" will be "R?" if there's a "Rename conflict"
    (a file renamed to the name of another, or two files identically renamed)
[6] "I" (or "I?") if some invisible files have pending actions (see page 18)

The bottom line is the "trailer", and contains the position of the cursor, the
file mask (see page 9) and the current sort keys (see page 21).  (The cursor is
indicated by an arrow on Datadiscs and IIIs and by the blinking underscore on
Datamedias.  It will often be referred to as the "arrow" regardless of the type
of terminal you're using.)  The trailer may be truncated if it is longer than
will fit on your screen, but the extended TRAILER command, and also the ⊗0αβM
and ⊗0⊗S commands, may be used to see the complete mask and/or sort keys.

Between the header and trailer are lines displaying selected info on files.
The info being displayed is selected by INFO switches at start-up and by the
extended INFO command (see pages 10 and 29).  Except for the Reap flag, fields
which are subject to change (currently Name, Extension, PPN, and Protection) are
always displayed.  (You may specify /-PPN and/or /-PRO in the INFO command (or
at start-up); the only effect will be to omit the specified field(s) from ⊗O
output files--see page 25.)  Note: DIRED will not display more info than will
fit across your screen.  If the display is truncated at the right, you can get a
more complete typeout using the extended TYPE command described on page 30.

On the Rename page there are two lines per file:  first the "current" (renamed)
info, then the original info.  Files slated for deletion are not displayed on
the Normal page; they are included on all other pages as appropriate.  Note that
it is perfectly reasonable to have a file on the Rename, Spool, and Delete
pages simultaneously; DIRED interprets this to mean that the file is to be
spooled under the new name and then deleted.

At the far left is the "DSR" field, interpreted thusly:
"D" column: D if file is to be deleted, r if reaped, u if unreaped.
"S" column: initial character of type of printer (X=XGP, D=Dover, etc.)
"R" column: R if renamed, ? if renamed to same name as another file, = if not
	    renamed but another file renamed to this name.
Command-line syntax

To run DIRED, use the system command DRD, followed by any sequence of switches
and filemasks.  If you say just "DRD", your TMPCOR file is used to give you the
same switches and mask that you had when you last exited from DIRED while
aliased to the same directory.  Switches are described on page 10; each switch
must be preceded by a slash (/).  A filemask is any file name and/or extension
and/or PPN, possibly wildcard (see page 17), terminated by a comma (outside the
PPN) or slash or end of line.  DIRED reads only entire directories (so it can
check for Rename conflicts), but displays only those files which match one of
the filemasks.  If one or more fields are omitted from a filemask, the defaults
are: Name/extension = "*", PPN = your alias.  The PPN is "sticky"; i.e., once
you specify a PPN in one filemask, it becomes the default for the next.

As an example, suppose your command line were:

	DRD FOO, .BAR/SIZE/DATE X*[*,DOC], Y*./FAST/SIZE/K,ZOT[UP

This displays files FOO.* and *.BAR on your alias area, plus files whose names
start with X (w/ any extension) or Y (w/ null extension) on any documentation
directory, and finally ZOT.*[UP,DOC].  The display is sorted by size (see page
22), equal-size files subsorted by date, due to the /SIZE/DATE switches.  You'll
be shown minimal information (/FAST) plus the files' sizes (/SIZE after /FAST)
in K (/K).  Note that the date isn't displayed even though it's used in sorting.

DIRED currently will not permit you to display directories from more than one
disk at a time.  To specify the disk to be used, you can include a device
(followed by a colon) ahead of the FIRST filemask, e.g., DRD UDP1:[FOO,BAR] .
The default device is DSK.  You can change the device later via the αβM command
described on page 20.
Command-line switches

Switch:	         Meaning ("- = ..." gives meaning if /- is used instead of /)
/BLOCKS		 File sizes to be displayed in blocks (disk tracks)
/DISPLAY, /INFO  Later SORT/INFO switches are to be taken as INFO switches
/F or /FAST	 Same as /INFO plus /-<all fields> [- = /FULL]
/FULL		 Same as /INFO plus /<all fields> [- = /FAST]
/HELP or /?	 Suppress /OPTION= and default filemask (*.*); display this file
/KMODE		 File sizes to be displayed in K-words
/NEWS		 Same as /HELP but display "news" page (page 4)
/OPTION		 Invoke/suppress OPTION.TXT or macros (see page 11 for details)
/PARANOID	 Never do any actions! (⊗. becomes ⊗X CANCEL) [- = normal state]
/QUIET		 Don't issue messages about unreadable directories [- = normal]
/R or /READONLY  Don't perform ⊗./⊗E which would do Delete/Rename [- = normal]
/SORT		 SORT/INFO switches taken as SORT keys (this is the default)
/TMPCOR		 Write TMPCOR file on exit (default) [- = don't]; see page 11
/UNSORTED	 Show files in "directory order" (see below) [- = reverse order]
/VERIFY		 Require verification when ⊗./⊗E does Delete/Rename [- = normal]
/WORDS		 File sizes to be displayed in words

Most of these switches can be overridden during the session using extended
commands, as described on page 26.

To elaborate somewhat on the /SORT and /INFO switches:

There is a class of switches called "SORT/INFO" switches, which specify fields
of file information (columns of the display).  When used as SORT switches, these
keys select which fields are to be used for sorting the list of files.  The
first such key is the primary sort, and is descending if "/-" is used instead of
"/".  Successive sort keys denote secondary (tie-breaking) sort fields, and each
may be ascending or descending independent of the others.  Meanwhile, the same
keys can be used as INFO switches, in which case they specify which fields are
to be included in the display.  (A field need not be displayed in order to be
used for sorting.)  "/-" indicates the field should not be displayed.  The
/DISPLAY or /INFO switch says that later SORT/INFO switches are to be
interpreted as INFO switches, while the /SORT switch says that they are to be
taken as SORT switches.  The default is /SORT.  The /FAST and /FULL switches
imply /INFO and also exclude or include (respectively) all fields.  For example,
DRD/-SIZE/FULL/-REF says to sort files by size, largest first, and to display
all fields except the date last referenced.  DRD/INFO/DATE/SORT/SIZE says to
sort by size, smallest first, and display only the date last written (as well as
the name, extension, ppn, and protection, which are always displayed).  The
SORT/INFO switches are listed on page 22.

The /UNSORTED switch is incompatible with all other SORT switches.  If /UNSORTED
is used, the files will be listed in the same order as they appear in the
directory, and the directories (PPNs) will be ordered according to the master
file directory.  (Additional PPNs read after startup may not be so ordered,
though the files within each such PPN will still be in directory order.)  This
mode is useful for debugging programs that process files in directory order.
The ⊗S command can be used to override /UNSORTED later in the session, after
which you cannot go back to the unsorted display except by restarting DIRED.
DIRED's use of OPTION.TXT and macros

Switch:		 Meaning:
/OPTION		 Get default parameters and switches from OPTION.TXT
/-OPTION	 Ignore OPTION.TXT
/OPTION=file	 Get default parameters and switches from the given file
/OPTION(#)	 Execute #th macro from OPTION.TXT (or file from earlier switch)
/OPTION=file(#)	 Get defaults from given file and execute #th macro in that file

Command:  Meaning:
  ⊗Y	  Re-execute default (most recently executed) macro
 ⊗#⊗Y	  Execute #th macro from current macro file
 ⊗0⊗Y	  Type current default macro # and file name
 ⊗-⊗Y	  Type text of current default macro
⊗-⊗#⊗Y	  Type text of #th macro from current macro file
  ⊗Z	  Read new macros from file
 ⊗#⊗Z	  Read macros from file and execute #th such macro
 ⊗0⊗Z	  Type current default macro # and file name (same as ⊗0⊗Y)
 ⊗-⊗Z	  Report number of macros available from most recently loaded file
⊗-⊗#⊗Z	  Type text of #th macro from current macro file (same as ⊗-⊗#⊗Y)

DIRED gets its start-up parameters from 3 sources.  First, if any parameters are
given on the command line, they are used; otherwise, the parameters in TMPCOR
(if any) are used to recover the mask and switches as of your last exit from
DIRED.  (The /-TMPCOR switch or extended TMPCOR command suppresses updating the
TMPCOR file upon exit, such that the parameters from the time before are
retained.)  Second, DIRED looks for a line in your login-area OPTION.TXT file
starting "DIRED:"; if found, the rest of the line is parsed for file masks and
switches.  OPTION.TXT items which are in the same "class" as items found in the
command line or TMPCOR are ignored; e.g., your OPTION.TXT file might say

	DIRED:[*,YOU]/SORT/-DATE/FULL/-REF/V

and your command line might be DRD [FOO,BAR]/SIZE/K/FULL, in which case you'll
look at *.*[FOO,BAR] in /VERIFY mode, files sorted by size (displayed in K),
showing full info.  If you just said DRD/R, you'd look at *.*[*,YOU], sorted
descending by date, showing all info except reference date, but you'd be in
/READONLY mode.  Finally, DIRED applies defaults for any "class" not otherwise
specified: *.*/SORT/PPN/NAME/EXT/FULL/BLOCKS/-R/-Q/-PARANOID/TMPCOR.  If your
terminal has lines shorter than 82 characters, /FULL/-COUNT is used to suppress
one field (the number of days referenced for each file).

The /-OPTION switch suppresses use of the DIRED line in OPTION.TXT.  Similarly,
DRD/OPT is a way to override use of TMPCOR while continuing to use OPTION.TXT.
(DRD/TMP, strangely enough, also works to override use of TMPCOR at startup.)

Meanwhile, you may store one or more lines of "macros" in OPTION.TXT; these must
immediately follow the "DIRED:" line and each such line must start with a colon.
To invoke one or more macros, use /OPTION(#) for any positive #.  The #th macro
line will be added to a pseudo-input string which is read before any commands
are requested at the terminal.  In macros the character "⊗" is interpreted as
<cr>, thus permitting multi-line commands (since each macro must be on a single
line).  Also, α and β are interpreted as <control> and <meta>, but only one of
each is permitted as a prefix per character, and if both are present it must be
as αβ, not βα.  Line-editor commands, including α<cr>, do not work in macros.

In general, macros are probably not as useful in DIRED as they are in E, in that
one rarely wants to perform a complex sequence of commands multiple times during
a single session.  However, certain sequences of DIRED commands might be used
many times in different sessions, and might indeed form the entire session.  For
example, your OPTION.TXT might look like this:

	DIRED:/SORT/-DATE/V
	:αSSIZE⊗αODIRED.OUT⊗αS-DATEαLα1αXSPOOL XGP←⊗αβD

Then the system command DRD/OPT(1), followed by αE to exit, would xspool (and
delete) a listing of the files on your alias directory, sorted by size.  Note
the trick of sorting by date, most recent first, in order to find the newly
written DIRED.OUT file.  This won't work if the DIRED.OUT file is being written
in a different (undisplayed) directory, which would be the case if you said DRD
[FOO,BAR]/OPT(1).  A safer way, albeit more complicated, which works in all
cases, would be the macro shown below (assume your LOGIN area is [X,Y]).

	:αSSIZE⊗αOD$.OUT[X,Y]⊗αβM+D$.OUT[X,Y]⊗αLαFD$.OUT[X,Y]⊗αXSPOOL XGP←⊗αβD

For compatibility with other programs which read OPTION.TXT files, DIRED permits
semicolons on the ends of its OPTION.TXT lines.  The semicolons are ignored.

The /OPTION switch can also specify a file to be used in place of OPTION.TXT.
The format for this is /OPTION=FILE or /OPTION=FILE(#).  The default file is
OPTION.TXT on your login PPN; /OPTION=[FOO,BAR] would use OPTION.TXT[FOO,BAR],
etc.  You may invoke macros from more than one file this way.  The last file
specified in a /OPTION switch is used in place of OPTION.TXT for determining
default parameters; if you want to read macros from other files but still use
OPTION.TXT for default parameters, follow your last /OPT(#) switch with /OPT=*
to restore OPTION.TXT as the most recently read file.

*** Invoking macros after starting up

Besides /OPTION(#) to invoke macros during initialisation, there are commands
to invoke macros later in the editing session.  These are summarised at the top
of this page; herewith some elaboration.

The ⊗Y command is used to execute macros from the most recently loaded macro
file.  Initially, this file is OPTION.TXT on your login PPN, unless you've
overridden this via the /OPTION=file switch or /-OPTION switch.  The ⊗Z command
asks for a file name to read in, which is parsed for macros in OPTION.TXT format (i.e.,
(i.e., looking first for a line beginning "DIRED:", followed by lines beginning
with colons).  Typing α<cr> after the ⊗Z will load the line editor with the name
of the most recently read macro file.  The default file name is again OPTION.TXT
on your login PPN, regardless of the current macro file.

The arguments to ⊗Y are:  No argument means re-execute the most recently
executed macro.  Macros executed via /OPTION(#) switches at startup don't count.
A positive argument means execute the specified macro from the current file.  A
negative argument prints the text of the specified macro (or the most recently
executed macro if no explicit number is given).  A zero argument prints the
number of the current macro and the file from which it came, as well as the
number of macros loaded from that file.

The arguments to ⊗Z are analogous:  No argument means read a new file but don't
execute any macro from it.  A positive argument means read a new file and
execute the specified macro in it.  Negative and zero arguments do not read a
new file at all, and are equivalent to their ⊗Y counterparts, except that ⊗-⊗Z
(with no numeric argument) simply reports the number of macros read from the
current file, but not the text of the most recently executed macro.

NOTE:  The ⊗Y and ⊗Z commands are not allowed from within macros.
Window/cursor-moving commands
(Same as in the E editor; hence described here only very briefly.)

	       1 file:	  4 files:    1/2 Screen:    Window:	  To top/bottom:
To move down:	<cr>	     ⊗>		  ⊗≥	 ⊗W or <ff> (↑L)       ⊗∨
To move up:	<bs>	     ⊗<		  ⊗≤	    <vt> (↑K)	       ⊗∧

⊗T glitches window down 4 files at the top, ⊗B up from the bottom.  These and
above commands allow optional preceding ⊗#, ⊗+, and ⊗-, to do command (inverse
if ⊗-) # times.  ⊗#⊗∨ and ⊗#⊗∧ go to #th file from bottom/top, or center if #=0.
⊗0⊗W, ⊗0<ff>, and ⊗0<vt> move arrow to current bottom/top file and center it.

⊗J jumps arrow file to top of window; ⊗-⊗J jumps to bottom, ⊗0⊗J to center;
⊗#⊗J jumps arrow up # files; ⊗-⊗#⊗J jumps down.

⊗L goes to first file of current page, ⊗#⊗L goes to #th file, ⊗<sign>⊗#⊗L goes
to #th file before/after current one.

If you are in file-display mode (as described on page 16), the commands ⊗<ff>
and ⊗<vt>, if given with no numeric arguments, work as in E to move to the next
or previous page of the file if the bottom/top is visible in the window when you
give the command.
Page-changing commands

Note: These commands work significantly differently if you are displaying a page
      of a file.  See page 16 for details.

Command:  Meaning:
  ⊗P	  Go to page specified by next char, put arrow at "most reasonable" file
 ⊗#⊗P	  Go to page specified by next char, put arrow at #th file
 ⊗0⊗P	  Return to position of last NON-page command on another page

 ⊗+⊗P	  Go to "most reasonable" file on "next" page (order is N,D,R,L,X,P,H,N)
⊗+⊗#⊗P	  Go to #th file on next page
⊗+⊗0⊗P	  Go to most recent position on next page

⊗-⊗P, ⊗-⊗#⊗P, ⊗-⊗0⊗P	Same as ⊗+ except go to "preceding" page

The character specifying the page must be one of N(ormal), D(elete), R(ename),
S(pool), or H(arvest).  There is no "Invisible" page; page 18 of this
documentation explains about that.  If you type "?" after the ⊗P you'll be
reminded of the page names.

By "most reasonable" file is meant either (a) the file most recently added to
the page, or (b) if you have been on that page since the last time a file was
added to it, then the most recent position.  Thus, if you have just deleted a
number of files, typing ⊗PD (or ⊗P⊗D, α and β are ignored on the page selection
character) will take you to the Delete page and position you at the last file
you deleted.  If you then move around on the Delete page (using the commands
shown on page 12 of this documentation), go to the Normal page, and return
to the Delete page, the arrow will be placed wherever it was when you left the
Delete page.  If you explicitly want to return to the most recent position on
a page even though more files have since been added to that page, you can use
the ⊗0⊗P (or ⊗+⊗0⊗P/⊗-⊗0⊗P) command.  If you explicitly want to be at the top
or bottom of the page you're switching to, use ⊗1⊗P or ⊗∞⊗P.

The ⊗0⊗P command is generally useful for switching back and forth between two
pages.  You can also use it to get back to where you were if you've just done a
series of ⊗P commands to look at the various pages.

Note that the Normal and Delete pages are "adjacent"; you can use ⊗+⊗P and ⊗-⊗P
to go back and forth between them.  The Harvest and Normal pages are likewise
adjacent.

If you're currently displaying a file (in particular, if you're looking at this
documentation file via ⊗?), you have to get back to the directory display (via
⊗0⊗P or αH) before you can do a ⊗PD or whatever to change directory pages.
Directory-editing commands (apply to SINGLE FILE by default; see page 15)

Command:  Meaning:		Command:  Meaning:
  αβD	  Delete		   ⊗$	  Spool
   ⊗R	  Rename		   ⊗C	  Cancel all actions (if on Normal page)
   ⊗π	  Change protection		  or this page's action (if not)

Reaping and unreaping are available ONLY via extended commands; see page 27.

The ⊗R and ⊗π commands request a new name or protection; if you type just <cr>
the default is to use the same name/protection you gave last time.  ⊗0⊗R and
⊗0⊗π display the default without affecting any files.  When the name/protection
is requested, α<cr> will load line-editor with current data.  Wildcard chars in
the new name (∃ not allowed) leaves those chars unchanged.  In particular,
⊗R.XXX<cr> changes just the extension (to .XXX) without affecting the filename,
and ⊗R[FOO<cr> changes just the project half of the PPN without affecting the
filename, extension, or the rest of the PPN.  The new protection may include a
sign, in which case the specified bits are turned on or off without affecting
other bits.  E.g., ⊗π+400<cr> sets the "don't dump" protection bit.

To elaborate slightly on the ⊗C command: If given while on the Normal page, it
cancels all actions pending on the selected file (i.e., unspools and unrenames
it, and undoes any pending reap/unreap commands).  On any other page, only the
action associated with that page is cancelled.  Note that, if a file is both
Deleted and Spooled (say), you can't cancel both actions with a single ⊗C
command, since the file does not appear on the Normal page.  The extended CANCEL
command is able to cancel both actions at once; type ⊗2⊗7⊗? for details on this
and other extended directory-editing commands.

To see what files have been marked for deletion or for some other action, use
the page-changing commands described on page 13.

The αβD command will override any extended REAP or UNREAP commands applied to
the file(s) involved.  A file marked for deletion cannot be reaped or unreaped
without first cancelling the deletion.

The ⊗$ command spools to whichever printer was most recently specified using the
extended SPOOL command (see page 27).  If no extended SPOOL command has been
given yet, the ⊗$ command will complain.  The command ⊗0⊗$ reports the current
default printer.  Each file may be spooled to at most one printer; if you try
spooling a file to a second printer you will be asked to confirm cancelling the
first spool request.
Numeric arguments to αβD, etc.

The directory-editing commands described on page 14 accept optionally-signed
numeric arguments, which are interpreted as in the E editor, to wit:

   ⊗#	    operate on # files starting with current (arrow) file
   ⊗-	    operate on preceding file
  ⊗-⊗#	    operate on # files backward starting with preceding file

The default is, of course, to operate on only the current (arrow) file.  Thus,
for example, ⊗-αβD deletes the file above the arrow, and ⊗∞⊗$ spools all files
from the arrow through the end of the page.

Recall that, if a command is aborted while in progress (e.g., if you respond
<alt> when asked about deleting a protected file), files already processed by
the command are not restored to their prior state.

The equivalent extended commands (page 27) accept these same numeric args, but
default to operating on the whole page.  Thus ⊗X SPOOL *.SAI spools all files
whose extensions are .SAI, and ⊗9⊗X SPOOL *.SAI spools any such files which are
among the nine files starting at the arrow (NOT the next 9 such files).  If you
give no numeric argument and no file specification to one of these extended
commands, you'll be asked to confirm performing the action on all files on the
page.  Typing Y confirms, N causes DIRED to assume a numeric argument of 1, and
<alt> aborts entirely.  ⊗X CANCEL requires no such confirmation.

Since there are no single-character commands for doing reaps and unreaps, the
extended REAP and UNREAP commands do not default to operating on the whole page.
Thus ⊗X REAP will reap only the current file.  If you specify a filemask,
however, it is applied to the entire page (assuming no numeric argument is
given); thus ⊗X REAP * will reap all files on the current page.

⊗X CANCEL, when given while on the Normal page, has the effect of undoing all
actions on ALL visible files, even files not on that page (i.e., deleted files).
Note that this is not true of the ⊗C command.  ⊗X CANCEL has no effect on
invisible files (see page 18).
File-displaying/editing commands

The following commands are provided for looking at and editing individual files:

Command:  Meaning:
⊗#⊗∃	  Display page # of current (arrow) file
⊗#⊗?	  Display #th page of documentation (this file)
⊗#⊗ε	  Switch to E editor, editing #th page of current file in READWRITE mode
⊗#⊗λ	  Switch to E editor, editing #th page of current file in READONLY mode

When you display a page of a file using ⊗∃ or ⊗? (or extended EXAMINE/HELP), you
are in a special mode.  You can still use the window/cursor-moving commands
described on page 12; they will move you around on the displayed page so that
you can see more than one window's worth of text.  (Text is, however, truncated
to 1000 lines per page.)  Furthermore, the ⊗P commands DON'T work as described
on page 13; they work as in E.  That is, ⊗P displays the next page of the file,
⊗#⊗P displays the #th page, ⊗-⊗P displays the previous page, etc.  The commands
⊗<ff> and ⊗<vt> (as opposed to <ff> and <vt> without bucky-bits) also work as in
E to change pages if the bottom/top of the current page is in the window and no
numeric argument is given to the commands.

Directory operations (αβD, αβM, ⊗O, etc.) are illegal in file-display mode.  To
get out of this mode, returning to the directory display, give the command ⊗0⊗P
(the DIRED command for returning to an earlier page) or αH (the E command for
returning from a file).  This is the ONLY way (short of exiting) to get out of
file-display mode; the ⊗V commands merely refresh the file display.

The default page # in all of the commands is page 1, except that if you are
already displaying a file, the default is the current page number.  Also, when
displaying a file, the ⊗∃, ⊗ε, and ⊗λ commands will examine/edit the file being
displayed instead of the current arrow file in the directory display.  (Thus, if
you are looking at a file via ⊗∃ and are on, say, page 17, the ⊗ε command will
swap to E editing page 17 of that file.  It will even leave the cursor at the
same line on the page.  As a special case, if you give a ⊗λ or ⊗ε command with
no sign or argument, and are NOT already in file-display mode, you will end up
on the same page that you would if you did an ETV command for that file, i.e.,
page 1 unless it is a 2-page file with page 1 being an E directory, in which
case you end up on page 2.)  The commands may also be prefaced with ⊗- or ⊗+ to
select the #th page relative to that being displayed.  The ⊗? command is
permitted in file-display mode, and switches to this documentation, still in
file-display mode.

If the file being displayed has an E directory, it is used to make accessing the
file more efficient.  If the directory is found to be invalid, DIRED will report
the fact and will discard it.  For files without E directories, DIRED creates a
temporary one as the file is read, making later page-changing more efficient as
long as you don't leave file-display mode or change to a new file (when you do
either of these things the information is discarded).

As in E, DIRED's file display includes a header and a trailer.  The header
contains stars if the window starts at the top of the page, else it contains
dots and also the line number of the first line in the window.  Similarly, the
trailer includes stars if the window includes the last line of the page (or of
the truncated page if the page was over 1000 lines long) and dots otherwise, and
also includes the position of the arrow and the total number of lines on the
page.  The header line also indicates what actions, if any, are pending for the
file being displayed, including the "old" name if a Rename is pending.

Since the ⊗ε and ⊗λ commands exit from DIRED, they first perform all pending
actions.  See page 24 for details on this process.  To return from E after a ⊗ε
or ⊗λ command, use the E command: ⊗X DRD.
Wildcard file specifications

Whenever DIRED expects a file name as input from the user (e.g., in the command
line or an extended directory-editing command), these special mappings apply:

↓   used to "quote" otherwise illegal chars (non-letter, non-digit, non-$)
_   equivalent to ↓ ↓, i.e., a quoted space
∀   matches any single character
?   equivalent to ∀
∃   matches any single non-blank character
*   pads with ∀ to end of field (pad to right for name/extension, left for PPN)

Note that * is permitted only at one end of a field: the right end for name/ext
and the left for either half of the PPN.  The default name and extension is *;
the default PPN varies depending on where the file specification is used.

Examples:

????.∃∃		matches any file with at most 4 characters in its name and
		EXACTLY 2 in its extension
MUMBLE		same as MUMBLE.*; i.e., files with name MUMBLE and any extension
MUMBLE.		files with name MUMBLE and NO extension
.FOO		all files with extension FOO
.		all files which have NO extension
X*.BAR[*S,BAZ]	is the same as X?????.BAR[??S,BAZ]
___FOO.MSG[2,2]	is FOO's mail file
File masks and invisible files

When DIRED is started up, you give it a "mask" which selects directories (PPNs)
and files within those directories.  (See page 9 for more about this.)  DIRED
displays only the selected files from the selected PPNs.  However, the info on
all other files in the selected PPNs is also obtained to check for possible
Rename conflicts.  These files, not shown on any page, are called "invisible".
Changing the file/PPN mask may cause visible files to become invisible or vice
versa, as well as possibly adding more visible or invisible files.  Directory-
editing commands, including ⊗X CANCEL, NEVER affect invisible files.

Once obtained, the information on a file is almost never forgotten (until you
exit DIRED, e.g. to E).  If you change directories often, you will build up a
sizable list of invisible files.  If a mask change (αβM) or Hide command (αβH)
leaves any files invisible on which actions (deletion, spooling, etc.) are
pending, the "I" flag will be displayed in the header line.  If an invisible
file is involved in a Rename conflict, "I?" will be displayed.

When you rename a file and change its PPN, the directory for the new PPN is read
(if it hasn't been already) in order to check for a conflict.  The files in the
new directory are all initially invisible.

There are two circumstances under which DIRED discards directory information
from core without actually exiting.  One is when you use the αβM (or extended
MASK) command to change the device name (see page 20).  Since you're about
to be looking at another device entirely, all information pertaining to the
current device's directories is discarded, after first running the action lists.
The second case is when you explicitly tell DIRED to reread the directory
information from the disk; this is done with the extended REREAD command.

REREAD is intended for use in 2 situations:  (1) You've been looking at several
directories, a few at a time, and you're running out of core because all the
ones you've looked at are kept in core (as invisible files) even if no longer
included in the mask.  REREAD will discard all this excess data and do a garbage
collection.  (2) Some other program has changed the files in a directory (or the
protection on one that you tried unsuccessfully to read) and you want DIRED to
reread the directory to get the new information (or to try again to read the
directory, which it will normally refuse to do after failing once).  Note that
REREAD takes no argument -- it is not possible to reread the directory
information for a subset of the files.
Visibility-related commands (see page 18 for a discussion of invisibility)

Command:  Meaning:
 αβH	  Hide file (make invisible)
  αI	  Display only previously invisible files with actions pending
 αβI	  Display only previously invisible files, active or not
 ⊗+αI	  Display invisible actions in addition to current lists
⊗+αβI	  Display all invisible files in addition to current lists

The αβH command accepts a numeric argument, interpreted the same as for αβD and
the other directory-editing commands (see page 15).  αI and αβI do not permit
numeric arguments, though they accept ⊗+ as noted above.  (They also accept, and
ignore, ⊗-.)

To undo the effects of these commands, you can use αβM <cr> to reinforce the
current mask, though this may cause some renamed files to vanish.  (See page 20
for information on the αβM command.)

Thus, for instance, if you want to select a set of files whose names you'd like
to put into a file via the ⊗O command, you could start off looking at *.* on the
directories of interest, use αβH to hide the files you're interested in, then
use αβI to invert the visibility of all files.  This would leave you looking at
just the files you'd previously hidden, and you could now do your ⊗O command.

Another typical application would be when you have created a new version of some
file, such as a program on [1,3].  The file is in your area, and you use the ⊗R
command to rename it to [1,3].  Assuming you hadn't already included [1,3] in
the mask, DIRED would go off and read that directory, find the older version of
the file, and report a Rename conflict.  It would display a "?" in the R column
of the display, and would put "I?" in the header to indicate that an invisible
file (the one on [1,3]) was involved in a conflict.  You could then do ⊗+αI to
add the conflicting file to the display so you could delete it.  (It would show
up at the very bottom, but you could do ⊗S <cr> to put it in its proper place.)
Or you could do αI to see just the file on [1,3].

The extended form of the Hide command lets you specify that only reaped or only
non-reaped files are to be affected.  See page 28 for further details.

WARNING!!  These commands can be quite powerful for certain applications, as in
the preceding paragraphs, but it's also quite easy to get completely confused if
you use them without any clear idea as to what they do.  This is especially true
of the extended forms when you include a wildcard file specification.  If you
get lost, use αβM <cr> to restore visibility based on the current mask.
Mask-changing command (see page 18 for a discussion of invisibility)

Command:  Meaning:
⊗0αβM	  Print current file mask (same as in the trailer, but never truncated)
 αβM	  Enter new file mask (or modify existing one; see below)

When you type αβM, DIRED will prompt "Mask?".  Typing α<cr> will load the line
editor with the current mask (omitting the device name).

Entering +<filespec> adds the file/PPN to the mask; -<filespec> removes it (it
must currently be in the mask).  The sign is sticky; if the first spec is
unsigned, the old mask is flushed and + is assumed.  For example, suppose the
current mask is "*.FAI[X,Y],*.*[1,3],*.*[UP,DOC]".

	If you type:			    The new mask will be:
αβM [S,DOC],[1,3] <cr>		      *.*[S,DOC],*.*[1,3]
αβM +[S,DOC],[1,3] <cr>		      *.FAI[X,Y],*.*[1,3],*.*[UP,DOC],*.*[S,DOC]
αβM +[S,DOC],-*.FAI[X,Y],[1,3] <cr>   *.*[UP,DOC],*.*[S,DOC]

After the input, the visibility of ALL files is reevaluated; hence a null input
simply "reinforces" the mask, undoing earlier αβH/⊗I commands.	If ⊗- or ⊗+
precedes αβM, it is equivalent to prefixing - or + to the input string.  E.g.,
⊗-αβM α<cr> <cr> will flush the entire mask.

If a file is renamed and the new name does not match any specification of the
file mask, the file will continue to be displayed until such time as a new αβM
command is given (αβM <cr> suffices).  At that point the file's visibility will
be reevaluated and the file will become invisible (and the "I" flag will appear
in the header, if it wasn't already there).

If the first filespec you give is unsigned (i.e., it is not preceded by a + or -
and neither is the αβM), then it may include a device name.  If the device is
different from that currently being displayed, the action lists will have to be
run (see page 24).  You will be asked to confirm doing so.
Sort command (⊗S)

The ⊗S command is used to specify a new set of sort keys.  ⊗0⊗S will print the
current keys (same as in the trailer but never truncated).  ⊗S will cause DIRED
to prompt "By", whereupon you should enter the new keys.  Typing α<cr> will load
the line editor with the current keys.	A null input leaves the keys unchanged,
but the display is freshly sorted (files may have gotten out of sorted order via
⊗R commands, since a file is not moved when renamed).  The arrow stays at the
current file, though the context surrounding that file may shift drastically.

Sort keys may be preceded by slashes (optional) and are separated by spaces,
commas, or the slashes.  If a sort key is preceded by a sign (following the
slash if present), then the field will be descending (if -) or ascending (if +,
the default).  The special key REV inverts the direction of all keys.  ⊗S REV
will reverse the current sort.	(The command ⊗X REV also does this.)

The sort keys are listed on page 22 of this documentation.

For example, ⊗S /SIZE/-DATE/REV <cr> is the same as ⊗S /-SIZE/+DATE <cr>, and
says to sort the files by size, largest first, and to sort equal-size files by
the dates and times when they were written, oldest first.
Sort/info keys (+/- = ascending/descending sort or add/omit info field)

Key name:    Field:
ALPHA	     Same as NAME
COUNT	     Number of days referenced since last written
DART	     Dump status (see below)
DATE	     Date/time last written (to the nearest 1/15 second)
DUMPED	     Same as DART
EXTENSION    File extension (the part of the name which follows the ".")
FILENAME     Same as NAME
NAME	     File name (name only, not extension)
PCT	     Percentage of days referenced since last written
PERCENT	     Same as PCT
PPN	     File PPN, sorted on programmer name first, project second
PROTECTION   File protection
REFERENCED   Date of last reference
REVERSED     Special key, usually abbreviated REV (see page 21)
SIZE	     File size (in words for sorting purposes)
USING	     Program last used to write the file
WRITER	     PPN of person who last wrote file, sorted on programmer name first

The DART (or DUMPED) key sorts files by the following criteria:  First, files
that have been dumped on permanent Dart tapes, with files which have been dumped
more often being listed first.  Next, files which have only been dumped on
temporary tapes, and finally files which have not been dumped at all.  Files
dumped an equal number of times are sorted according to the date when they were
last dumped; files which still tie are sub-sorted with files marked for reaping
coming after those that aren't.  /-DART sorts undumped files first.

In the display for the "Dumped" field, a "T" indicates the file has been dumped
on a temporary tape (but not on a permanent tape), and a "P" indicates the file
has been permanently dumped.  The digit following the T or P indicates how many
times the file has been dumped on a permanent tape (always 0 after a T).  An "R"
in place of the T or P (or in place of nothing at all) indicates the file is
marked for reaping (that is, it will be included in the next permanent dump and
will be deleted after having been dumped at least twice); the number will still
be there to indicate how many times the file has been permanently dumped so far.

The reference count used for the COUNT field has been maintained only starting
May 21, 1979, and thus refers only to the number of days referenced since then.
Similarly, the PCT field refers to the percentage of days referenced since then.
A percentage of 100 is displayed (and sorted) as 99 in order to save a column.
If the file was last written "today" (the day you read that ufd), the PCT column
will be empty.
String-search commands

Command:  Meaning:
  ⊗F	  Find next file matching given filespec
 ⊗-⊗F	  Find preceding file matching given filespec
  ⊗*	  Repeat last search, looking for later file
 ⊗-⊗*	  Repeat last search, looking for earlier file
 ⊗0⊗*	  Print current search mask

Eventually DIRED should have commands which let you search for arbitrary text
occurring in any of the info fields being displayed.  For now, however, there
are a few commands for searching just the file name, extension, and ppn fields.

The basic command is ⊗F<filespec><cr>, which searches for the next file in the
list which matches the (possibly wildcard) filespec.  The current (arrow) file
is not counted.  E.g., ⊗F.SAI<cr> moves you to the next file with extension SAI.
If there is no such file, an error is printed and the cursor is not moved.

Either of the commands ⊗* and ⊗F<cr> searches for the same filespec as the
previous ⊗F command.  The commands ⊗0⊗* and ⊗0⊗F print this "default" filespec
without actually performing a search.  ⊗Fα<cr> loads the filespec into the line
editor for you to modify, then searches for the modified name.

Any of these commands (except ⊗0⊗* and ⊗0⊗F) accept a preceding numeric argument
and search for the #th file, starting with the file after the arrow, which
matches the spec.  If too few files are found, the cursor is not moved.  The
commands also accept a preceding ⊗-, which causes the search to be performed
towards the top of the page starting with the file above the arrow.

For future use, the commands ⊗X EXACT and ⊗-⊗X EXACT control whether exact case
matching is required.  They have no effect on the current search commands.

**NOTE**: The extended commands F and FIND (as in E) are *NOT* implemented.
Exiting and doing actions

Command:  Meaning:
   ⊗E	  Do all pending actions, then exit (after exit, CONTINUE will proceed)
   ⊗.	  Run action lists

Note also the extended command ⊗X QUIT, which exits WITHOUT doing any actions.
See page 29.

If you exit with ⊗E (as opposed to ⊗ε or ⊗λ), typing CONTINUE to the system will
proceed back into DIRED as though you had never left, except that the actions
will have been performed.

If ⊗. is given an argument as described on page 15, only the specified files
have their actions done.  If you're on the Normal or Delete page, all actions
are done for each affected file.  (It wouldn't make much sense to just do the
deletion and leave the spooling for later.)  On other pages only the action
associated with that page is done.

If ⊗. is NOT given an argument and you're on the Normal page, then all actions
(INCLUDING DELETIONS) for all visible files are done.  On any other page, all
files on that page, and no others, are affected and only that page's action is
done, except that on the Delete page the deleted files are spooled as required.

⊗E, ⊗ε and ⊗λ (see page 16), and αβM if changing devices (see page 20) always do
all actions on all files, INCLUDING INVISIBLE ONES.  This is the only way, other
than the commands described on pages 19 and 20, to affect invisible files.

If one or more actions fail to be performed (e.g., if a rename fails due to a
new file having been created by another job), DIRED will ask you to confirm
exiting.  Typing anything but "Y" will abort, leaving you in DIRED.

*** Rename conflicts, and READONLY, VERIFY, and PARANOID modes:

Before doing ANY actions, DIRED checks ALL actions about to be done.  If they
include a Rename conflict (two files ending up with the same name), the ⊗E or ⊗.
command is aborted.  Note that it is possible for a ⊗. command to result in a
Rename conflict even though there are no such conflicts displayed (i.e., neither
"R?" nor "I?" appears in the header line).  For instance, you might have asked
for file A to be renamed B, and file B be renamed A, and then do a ⊗1⊗. to do
only one of the actions.  DIRED will catch this and abort the command.  If you
were to request both actions be done via a single command (e.g., ⊗E), DIRED
would do so.  (And you wouldn't believe the machinations it sometimes requires!)

If a Rename or Delete is included and you're in /R (readonly) mode, you'll be
asked to confirm by saying READONLY (don't do Rename/Deletes), READWRITE (do
them and leave /R mode), or <alt> to abort the command.  In /V (verify) mode,
you'll also be asked for confirmation, but "Y" is enough, and you're left in /V
mode.  In either case, if you don't confirm (and don't abort), the Renames and
Deletions will be left undone and will remain in the action lists (unless you
exit and run another program, such as via a ⊗ε or ⊗λ command).  Readonly mode
and Verify mode are mutually exclusive and are selected via the /R and /V
start-up switches (see page 10) and by the extended commands on page 29.

Independent of all this, PARANOID mode causes ⊗. (and the action-related portion
of ⊗E) to be equivalent to ⊗X CANCEL.  It essentially means, "Don't under any
circumstances DO any of these actions!  I just want to practice using DIRED!"
This mode is invoked by the /PARANOID start-up switch or ⊗X PARANOID command.
Miscellaneous commands

Command:  Meaning:
   ⊗O	  Send current page to file (and add file to display if appropriate)
   ⊗U	  Undo most recent directory-editing command (not yet implemented)
   αV	  Redraw screen (without clearing)
  αβV	  Clear and then redraw screen
⊗X or /	  Enter extended command (type ⊗2⊗6⊗? for a list of extended commands)

⊗O asks for a file name, which may be preceded or followed by switches:
     /QUIET	suppresses question if WRT privilege needed to write file;
		also suppresses confirmation if overwriting existing file
     /ALL	causes DSR field to be included
     /FOONLY	gives foonly-format file
(Foonly-format is a list of file names suitable for use as input to another
program, such as DART or COPY, via the latter's at-sign feature.  It is similar
to the /FOO switch in COPY.)  The file name may include a device, which need not
match that in the filemask.  α<cr> loads a default name of DSK:DIRED.OUT.  No
warning is given if the file overwrites an existing one.  If this happens, any
actions pending on the old file will be copied to apply to the new one instead.

If the ⊗O file is newly created (as opposed to overwriting an existing file) and
is included in the current file mask, it will be added to the display, but at
the BOTTOM of the list.  You can get it into its proper position via an explicit
⊗S<cr> command if you wish.

The ⊗U command is not yet implemented.

The ⊗V commands are useful for refreshing the screen if the display screws up.

After typing ⊗X or /, typing α<cr> will load the line editor with the most
recent extended command.
Extended commands (entered via the ⊗X or / command)

Many extended commands are just more general forms of single-character commands.
Type ⊗2⊗7⊗? for info on extended directory-editing and file-displaying commands,
⊗2⊗8⊗? for extended forms of other one-char commands, ⊗2⊗9⊗? for other extended
commands.  For quick reference, here's a list of all extended commands, with
page numbers indicating where in this documentation they are described:
27 ABORT        29 EXACT        28 HIDE         29 PARANOID     28 SORT
27 CANCEL       27 EXAMINE      29 INFO         27 PI           27 SPOOL
30 CONTROL      ?? F            28 INVERT       27 PROTECTION   30 TITLES
27 DELETE       29 FAST         28 INVISIBLE    29 QUIT         29 TMPCOR
29 DISPLAY      ?? FIND         27 LAMBDA       29 READONLY     30 TRAILER
29 DPYALWAYS    29 FONT         27 LOOKUP       29 READWRITE    30 TYPE
29 DPYSKIP      28 FOONLY       28 MASK         27 REAP         ?? UNDELETE
28 DRAW         29 FULL         30 METACONTROL  27 RENAME       ?? UNDO
27 EDIT         30 HEADER       27 NEWS         29 REREAD       27 UNREAP
27 ENTER        29 HEIGHT       30 NUMBERS      28 REVERSED     29 VERIFY
27 EPSILON      27 HELP         28 OUTPUT       

(?? = unavailable)
Extended directory-editing and file-displaying commands (see pages 14 and 16)

These extended commands are identical to single-char commands as listed below,
except they accept a filespec and/or switches.  The filespec can be wildcard
except for the extended forms of ⊗ε, ⊗λ, and ⊗∃.  (HELP and NEWS ignore any
filename.)  The filespec only RESTRICTS the range of files:  ⊗5⊗X DEL X[*,BAR]
deletes, from among the next 5 files, any named X.*[*,BAR], NOT the next 5 such
files.

The REAP and UNREAP commands do not have single-character equivalents.  The REAP
command requests that the bit be turned on that tells the DART program to delete
the file after the next P-dump if the file has then been dumped at least twice;
the UNREAP command requests that the bit be turned off.  If the bit does not
currently have the requested state, the file is flagged with either an "r" or a
"u" in the D column of the screen, the Dart info field is modified (if it's
being displayed at all), and the file is placed on the Harvest page.  A REAP
(UNREAP) command can be cancelled by the ⊗C or ⊗X CANCEL commands as usual, or
by a corresponding UNREAP (REAP) command.  A file that is currently marked for
deletion cannot be reaped or unreaped until the deletion is cancelled; a file
currently marked for reaping or unreaping can be deleted, implicitly cancelling
the reap or unreap request.

NOTE:  Unlike with the single-char forms, the default numeric argument on the
extended editing commands is to do the ENTIRE PAGE.  (This is not the case with
REAP or UNREAP unless you specify a filespec; thus ⊗X REAP will reap one file,
but ⊗X REAP * reaps all files on the page.  ⊗X DELETE would, however, delete all
files on the page (after verifying this was indeed your intention), since if you
really wanted to delete only one file you could use αβD.)  Also, ⊗X CANCEL (and
⊗X ABORT) on the Normal page cancels deletions as well.  Hence ⊗X SPOOL ZOT will
spool all files on this page with name ZOT.*[*,*].  See page 15 for a review of
the interpretation of numeric arguments.

The extended RENAME, PI, and PROTECTION commands take <newspec>←<filespec>; for
example, ⊗X RENAME *.SAI←*.FAI[*,FOO] or ⊗X PROT +400←.DMP.  The default
<newspec> is that printed by ⊗0⊗R or ⊗0⊗π.

The extended SPOOL command lets you specify the printer to which the file(s)
should be spooled, by saying SPOOL <device>←<filespec>.  (The <filespec> may be
omitted.)  Only the first letter of the <device> is significant.  The specified
printer becomes the default for subsequent ⊗XSPOOL or ⊗$ commands, and can be
checked using the command ⊗0⊗$ or ⊗0⊗XSPOOL.  For a list of known printer types,
give any bogus value (e.g., SPOOL ?←); note that not all types of printer
actually exist at any given site.

The extended forms of ⊗ε, ⊗λ, and ⊗∃ permit a device in their filespecs; the
device need not match that of the filemask.

The /QUIET switch is accepted by all of these commands except ones corresponding
to ⊗C, ⊗ε, or ⊗λ; it suppresses queries on overriding protection where possible.

Here is a table showing the extended commands and the equivalent one-char forms.

	ABORT  = ⊗C	EPSILON = ⊗ε	LOOKUP = ⊗λ	 REAP   = none
	CANCEL = ⊗C	EXAMINE = ⊗∃	NEWS   = ⊗4⊗?	 RENAME = ⊗R
	DELETE =αβD	HELP    = ⊗?	PI     = ⊗π  	 SPOOL  = ⊗$
	EDIT   = ⊗ε	LAMBDA  = ⊗λ	PROTECTION = ⊗π	 UNREAP = none
	ENTER  = ⊗ε
Extended forms of miscellaneous one-character commands

Where the one-character form of these commands makes a distinction between α and
αβ, the same distinction is made between αX and αβX.  E.g., αX DRAW = αV, while
αβX DRAW = αβV.

The HIDE and INVERT/INVISIBLE commands take filespecs as described on page 27.
HIDE also accepts a numeric argument, again as described on page 27.  Further,
HIDE accepts a /REAPED or /-REAPED switch (either before or after the filespec,
if present), which specifies that only reaped or non-reaped files, respectively,
are to be affected.  "Reaped files" includes files that were already so marked
when you entered DIRED, as well as files that have since been flagged via the
extended REAP command.  Likewise, "non-reaped files" includes files that have
been "unreaped" during the current session, as well as files that weren't, and
still aren't, marked for reaping at all.  Thus ⊗XHIDE/R hides all files that
will (eventually) be reaped, letting you see what will be left.  ⊗XHIDE *.SAI/R
(or ⊗XHIDE/R *.SAI) hides all reaped SAIL files, and so forth.

OUTPUT and FOONLY take non-wild filespecs and switches as described for the ⊗O
command on page 25.

MASK and SORT take new filespecs or sort-keys; the α<cr> feature of the αβM and
⊗S commands is not available.

⊗X DRAW    = ⊗V (redraw the screen with or without clearing first); see page 25.
⊗X FOONLY  = ⊗X OUTPUT (see below) but with /FOONLY switch appended.
⊗X HIDE    =αβH (make files invisible); see page 19.
⊗X INVERT and ⊗X INVISIBLE = ⊗I (invert visibility); see page 19.  If ⊗- or ⊗+
	precedes the ⊗X, the sign is treated as for ⊗I.  These two extended
	commands are equivalent, and either may be abbreviated ⊗X INV.
⊗X MASK    =αβM (change or reinforce mask); see page 20.
⊗X OUTPUT  = ⊗O (output to file); see page 25.
⊗X REVERSED= ⊗S REVERSED <cr> (reverse order of sorting); see page 21.
⊗X SORT    = ⊗S (specify new sort keys); see pages 21 and 22.
Miscellaneous extended commands (see also non-display commands on page 30)

Flag-Setting Commands:

Several extended commands merely set or clear various flags which affect later
actions of DIRED.  Most of these commands simply set their flag the way they
want it regardless of the argument, if any, preceding the ⊗X.  The EXACT,
PARANOID, and TMPCOR commands, however, set their flags if given a positive (or
unsigned or absent) argument, clear them if given a negative argument, and
display their current state (without changing) if given a (possibly signed)
argument of zero.

Command:    Effect:
DPYALWAYS   Update the display after every command
DPYSKIP     Only update the display when no typeahead (this is the default)
EXACT	    Set/clear/display "exact-case" search flag (see page 23)
PARANOID    Set/clear/display PARANOID-mode switch (see pages 10 and 24)
READONLY    Disallow ⊗. (or ⊗E) performing renames/deletes (see page 24)
READWRITE   Allow renames/deletes
TMPCOR	    Set/clear write-TMPCOR-on-exit switch (see pages 10 and 11)
VERIFY      Require confirmation before performing renames/deletes (see page 24)

Display-Related Commands:

⊗X DISPLAY or ⊗X INFO lets you add/remove info fields from the display.  They
take a string of info switches (see page 22) with optional signs; - to remove
field from display, + or unsigned to add it.  FAST and FULL are special info
switches which turn all fields off or on.  If you say ⊗X INFO <cr> (i.e., don't
give any switches), the current switches will be loaded into the line editor.

⊗X FAST and ⊗X FULL are equivalent to ⊗X INFO FAST and ⊗X INFO FULL.

⊗#⊗X HEIGHT tells DIRED to display only # lines in the window.  # will be made
even and will be restricted to the range 10 to maxheight, where maxheight is the
maximum size window which will fit on your display.  If the argument is omitted,
the default screen height is restored.

Other Miscellaneous Commands:

⊗X REREAD causes DIRED to throw away all the data it has read about directories
and reread the directories occurring in the current mask.  If there are any
actions pending they will be performed, after confirming that you don't object.
See page 18 for details regarding when you might want to do this.

⊗#⊗X FONT <filename> causes the specified font to be used on all subsequent
Spool requests.  (Some types of printer ignore the font specification.)  The
default extension is FNT; default PPN is [XGP,SYS].  If no <filename> is given,
the system default is used (note that this differs from printer to printer).
The numeric argument is optional; if present, it is used as the interline
spacing (XLINE parameter).  If negative, the system default spacing is used.

⊗X QUIT exits to the monitor WITHOUT running the action lists.  The monitor
command CONTINUE can be used to get back into DIRED without disturbing anything.
Extended non-display commands (here "TTY" is used to mean any non-display)

The following commands may prove useful when using DIRED from a TTY:
  ⊗X CONTROL	  Make next command char have only the CONTROL (α) bit
  ⊗X HEADER	  Type out the header line (from top of window)
  ⊗X METACONTROL  Make next command char have both META and CONTROL (αβ) bits
  ⊗X NUMBERS	  Enable or disable typing of line numbers with text
  ⊗X TITLES	  Type out the titles of the info columns (from above header)
  ⊗X TRAILER	  Type out the trailer line (from bottom of window)
⊗#⊗X TYPE	  Type info for # lines (and move to line after last typed; if
		  on TTY, type it also); default # is 10 on TTYs, 1 on displays

The NUMBERS command causes later TYPE commands to include file numbers (suitable
for use with the ⊗L command, see page 12).  The command ⊗-⊗X NUMBERS turns off
the numbering feature.

The HEADER, TITLES, TRAILER, and TYPE commands accept a switch, either /ALL or
/FULL.  TYPE/ALL types out all info fields selected by /INFO start-up switches
or ⊗X INFO commands; TYPE/FULL types out full info (all fields).  The default on
TTYs is to type only the selected information, and only as much of it as will
fit based on your terminal width and on whether the lines are being numbered
(see above).  (TYPE/ALL prints all selected fields regardless of line overflow.)
On displays the default is TYPE/FULL.  The switches have the same effect on the
TITLES command; the default is again /FULL on displays and only what will fit on
non-displays.  The two switches are equivalent for the TRAILER command; either
will cause the entire trailer to be typed instead of being truncated to fit the
screen.  The switches are ignored with ⊗X HEADER but are allowed for generality.

The TRAILER and TYPE commands may be useful on a display, since they show full
information, whereas the display may be truncated to the screen width.

A useful OPTION.TXT macro line (see page 11) for TTY users, invoked by
DRD/OPTION(1) (for instance), is    :αXTITLES⊗αXHEADER⊗α∞αXTYPE⊗αLαXTRAILER⊗
The following features are not yet implemented, but probably will be some day.

* Some form of "undelete" (and unspool, unrename, etc.) command, which will undo
    the most recent n directory-editing commands.
* More general ⊗F commands.  (Not ⊗\, however!)
* A "description" field a la PRUNE, probably using existing PRUNE.DAT files.
This page is rather time-consuming when displayed using DIRED's ⊗? command.  It
is intended to be spooled for use as a reference.  To spool it, say:
			XSPOOL DIRED.DON[UP,DOC](32)


  α = <control>     β = <meta>     ⊗ = either <control> or <control><meta>
  # = any unsigned decimal number or ∞ (in "⊗#" the ⊗ applies to every digit)

******* COMMAND-LINE SWITCHES *******

Switch	         Meaning ("- = ..." gives meaning if /- is used instead of /)

/BLOCKS		 File sizes to be displayed in blocks (disk tracks)
/DISPLAY, /INFO  Later SORT/INFO switches are to be taken as INFO switches
/F, /FAST	 Same as /INFO plus /-<all fields> [- = /FULL]
/FULL		 Same as /INFO plus /<all fields> [- = /FAST]
/HELP, /?	 Suppress /OPTION= and default filemask (*.*); display DIRED.DON
/KMODE		 File sizes to be displayed in K-words
/NEWS		 Same as /HELP but display "news" page of DIRED.DON
/OPTION		 Invoke/suppress OPTION.TXT (see page 11)
/PARANOID	 Never do any actions! (⊗. becomes ⊗X CANCEL) [- = normal state]
/QUIET		 Don't issue messages about unreadable directories [- = normal]
/R, /READONLY	 Don't perform ⊗./⊗E which would do Delete/Rename [- = normal]
/SORT		 SORT/INFO switches taken as SORT keys (this is the default)
/TMPCOR		 Write TMPCOR file on exit (default) [- = don't]; see page 11
/UNSORTED	 Display files in order of appearance in directory [- = reverse]
/VERIFY		 Require verification when ⊗./⊗E does Delete/Rename [- = normal]
/WORDS		 File sizes to be displayed in words

  SORT/INFO switches specify the initial sort keys (if used as SORT switches) or
  select info to be displayed (if INFO switches).  /+key = ascending sort or add
  info field = default; /-key = descending sort or omit info field.

Sort/Info Key	Field

ALPHA		File name (name only, not extension)
COUNT		Number of days referenced since last written (or 21-May-79)
DART		Dump status (sorted by # P-dumps, then T-dumps, then non-dumped)
DATE		Date/time last written
DUMPED		Dump status (sorted by # P-dumps, then T-dumps, then non-dumped)
EXTENSION	File extension (the part of the name which follows the ".")
FILENAME	File name (name only, not extension)
NAME		File name (name only, not extension)
PCT		Percentage of days referenced since last written (or 21-May-79)
PERCENT		Percentage of days referenced since last written (or 21-May-79)
PPN		File PPN, sorted on programmer name first, project second
PROTECTION	File protection
REFERENCED	Date of last reference
REVERSED	Reverse sign of all sort keys (ignored as info key)
SIZE		File size (in words for sorting purposes)
USING		Program last used to write the file
WRITER		PPN of who last wrote file, sorted on programmer name first

******* WILDCARD FILESPECS *******

Char	Use

↓	Used to "quote" otherwise illegal chars (non-letter, non-digit, non-$)
_	Equivalent to ↓ ↓, i.e., a quoted space
∀	Matches any single character
?	Equivalent to ∀
∃	Matches any single non-blank character
*	Pads with ∀ to end of field (to right for name/extension, left for PPN)

******* "SHORT" COMMANDS *******

Some of these commands interpret numeric arguments as follows:

      ⊗$	Operate on file currently at arrow
      ⊗#⊗$	Operate on # files starting with current file
      ⊗-⊗$	Operate on preceding file
      ⊗-⊗#⊗$	Operate on # files preceding current file

The "⊗$" could be any of: ⊗π, ⊗β (real beta!), ⊗↔, ⊗}, ⊗C, αβD, αβH, ⊗R.

A "*" after the page number in the table below indicates the command is legal
in file-display mode.

PAGE  COMMAND	MEANING

  7*  <alt>	Abort command
 12*  <ff>	Go forward one window
 12*  ⊗0<ff>	Go forward a half window
 12*  ⊗#<ff>	Go forward # windows
 12   ⊗<ff>	Same as <ff> (in directory-display mode)
 12*  ⊗<ff>	Go to next window, on next page if necessary (file-display only)
 12*  <vt>	Go back one window
 12*  ⊗0<vt>	Go back a half window
 12*  ⊗#<vt>	Go back # windows
 12   ⊗<vt>	Same as <vt> (in directory-display mode)
 12*  ⊗<vt>	Back a window, on previous page if necessary (file-display only)
 12*  <cr>	Move arrow to next file
 12*  ⊗#<cr>	Move arrow to #th following file
 12*  α<cr>	Don't move arrow (no-op)
 12*  <bs>	Move arrow up one file
 12*  ⊗#<bs>	Move arrow to #th preceding file
 12*  ⊗<bs>	Same as <bs>
 12*  β<bs>	Same as <bs>

 12*  ⊗>	Move arrow down 4 files
 12*  ⊗<	Move arrow up 4 files
 12*  ⊗≥	Move arrow down half a screen
 12*  ⊗≤	Move arrow up half a screen
 12*  ⊗∧	Move arrow to top of screen
 12*  ⊗0⊗∧	Move arrow to middle of screen
 12*  ⊗#⊗∧	Move arrow to #th file from top
 12*  ⊗∨	Move arrow to bottom of screen
 12*  ⊗0⊗∨	Move arrow to middle of screen
 12*  ⊗#⊗∨	Move arrow to #th file from bottom

 14   ⊗π#<cr>	Change protection of current file to # (note: # is octal)
 14   ⊗π-#<cr>	Turn off protection bits which are 1's in #
 14   ⊗π+#<cr>	Turn on protection bits which are 1's in #
 14   ⊗πα<cr>	Load line-editor with current protection for changing
 14   ⊗π<cr>	Change protection using # from most recent ⊗π command
 14   ⊗0⊗π	Show current default protection value (for ⊗π<cr>)

 14   ⊗$	Spool current file (to default printer)
 14   ⊗0⊗$	Show current default printer (set via extended SPOOL command)
		    
      ⊗A	Unused
 12*  ⊗B	Glitch screen up from Bottom
 14   ⊗C	Cancel action(s) pending for current file (all actions
		  cancelled if on Normal page, else just current page's)
 14   αβD	Delete current file
 24*  ⊗E	Run actions (if any) and exit
 23   ⊗F	Find next file matching given filespec; after ⊗F, α<cr> loads
		  most recent search string into line-editor
 23   ⊗-⊗F	Find preceding file matching given filespec
      ⊗G	Unused
 16*  αH	Return "home" to directory display from file-display mode
 19   αβH	Hide current file (make it invisible)
 19   αI	Display only previously invisible files with pending actions
 19   ⊗+αI	Display invisible actions in addition to current lists
 19   αβI	Display only previously invisible files, active or not
 19   ⊗+αβI	Display all invisible files in addition to current files
 12*  ⊗J	Jump the arrow file to the top of the screen
 12*  ⊗-⊗J	Jump the arrow file to the bottom of the screen
 12*  ⊗0⊗J	Jump the arrow file to the center of the screen
 12*  ⊗#⊗J	Jump the arrow file up # files
 12*  ⊗-⊗#⊗J	Jump the arrow file down # files
      ⊗K	Unused
 12*  ⊗L	Go to first file of current page
 12*  ⊗#⊗L	Go to #th file of current page
 12*  ⊗+⊗#⊗L	Same as ⊗#<cr>
 12*  ⊗-⊗#⊗L	Same as ⊗#<bs>
 20   αβM	Change file mask (+<spec> to add spec, -<spec> to remove,
		  sign is sticky; first spec unsigned to replace entire mask)
 20   ⊗-αβM	Same as αβM but -<spec> assumed if first spec unsigned
 20   ⊗+αβM	Same as αβM but +<spec> assumed if first spec unsigned
 20   ⊗0αβM	Type current file mask
      ⊗N	Unused
 25   ⊗O	Send current page to file (switches: /FOONLY, /ALL, /QUIET);
		  after ⊗O, α<cr> loads line-editor with "DIRED.OUT"
 13   ⊗P	Go to page specified by next character (N, D, R, L, or X),
		  put arrow at "most reasonable" file (most recently added or
		  most recent position, whichever is more recent)
 13   ⊗0⊗P	Return to position of last NON-page command on another page
 13   ⊗#⊗P	Go to page specified by next character, put arrow at #th file
 13   ⊗+⊗P	Go to "most reasonable" file on "next" page
 13   ⊗+⊗0⊗P	Go to most recent position on "next" page
 13   ⊗+⊗#⊗P	Go to #th file on "next" page
 13   ⊗-⊗P	Go to "most reasonable" file on "preceding" page
 13   ⊗-⊗0⊗P	Go to most recent position on "preceding" page
 13   ⊗-⊗#⊗P	Go to #th file on "preceding" page
 16*  ⊗P	Display next page of file in file-display mode
 16*  ⊗+⊗P	Display next page of file in file-display mode
 16*  ⊗+⊗#⊗P	Display #th following page of file in file-display mode
 16*  ⊗-⊗P	Display preceding page of file in file-display mode
 16*  ⊗-⊗#⊗P	Display #th preceding page of file in file-display mode
 16*  ⊗0⊗P	Return to directory display from file-display mode
      ⊗Q	Unused
 14   ⊗Rxxx<cr>	Rename current file to xxx; wildcard fields unchanged
 14   ⊗Rα<cr>	Load line-editor with current name for changing
 14   ⊗R<cr>	Rename using "xxx" from most recent ⊗R command
 14   ⊗0⊗R	Show current default protection value (for ⊗R<cr>)
 21   ⊗S	Specify new sort keys (or re-sort using current keys); after ⊗S,
		  α<cr> loads current sort keys into line-editor
 21   ⊗0⊗S	Type current sort keys
 12*  ⊗T	Glitch screen down fom top
 25   ⊗U	Reserved for Undo command
 25*  αV	Redraw screen (without clearing)
 25*  αβV	Clear and then redraw screen
 12*  ⊗W	Go forward one window
 12*  ⊗0⊗W	Go forward a half window
 12*  ⊗#⊗W	Go forward # windows
 25*  ⊗X	Enter extended command next (see table below); after ⊗X, α<cr>
		  loads most recent extended command into line-editor
 11*  ⊗Y	Re-execute default (most recently executed) macro
 11*  ⊗#⊗Y	Execute #th macro from current macro file
 11*  ⊗0⊗Y	Type current default macro # and file name
 11*  ⊗-⊗Y	Type text of current default macro
 11*  ⊗-⊗#⊗Y	Type text of #th macro from current macro file
 11*  ⊗Z	Read macros from given file; after ⊗Z, α<cr> loads current macro
		  file name into line-editor
 11*  ⊗#⊗Z	Read macros from given file and execute #th such macro
 11*  ⊗0⊗Z	Type current default macro # and file name (same as ⊗0⊗Y)
 11*  ⊗-⊗Z	Report number of macros available from most recently loaded file
 11*  ⊗-⊗#⊗Z	Type text of #th macro from current macro file (same as ⊗-⊗#⊗Z)

 24   ⊗.	On Normal page, do all actions on all files ON ALL PAGES
		On other pages, do this page's action on all files on the page
 24   ⊗#⊗.	Do action(s) on # files starting with current file (all actions
		  if on Normal page, else just current page's)
 24   ⊗-⊗#⊗.	Do action(s) on # files preceding current file
 16*  ⊗ε	Do actions & switch to E, editing current file in READWRITE mode
 16*  ⊗#⊗ε	Same as ⊗ε but start editing at page #
 16*  ⊗λ	Do actions & switch to E, editing current file in READONLY mode
 16*  ⊗#⊗λ	Same as ⊗λ but start editing at page #
 16*  ⊗∃	Display first page of current file
 16*  ⊗#⊗∃	Display page # of current file
 16*  ⊗+⊗∃	Display next page of current file
 16*  ⊗+⊗#⊗∃	Display #th following page of current file
 16*  ⊗-⊗∃	Display preceding page of current file
 16*  ⊗-⊗#⊗∃	Display #th preceding page of current file
 16*  ⊗?	Same as ⊗∃ but display DIRED.DON instead of current file

 23   ⊗*	Repeat last ⊗F or ⊗XFIND command, looking for later file
 23   ⊗-⊗*	Repeat last ⊗F or ⊗XFIND command, looking for earlier file
 23   ⊗0⊗*	Print current search mask
 25*  /		Same as ⊗X


******* "EXTENDED" COMMANDS *******

Extended commands which require numeric arguments get them, as a rule, from
the ⊗# preceding the ⊗X.  Extended commands which have an equivalent "short"
form generally use their numeric argument the same way the short form does,
but commands parallel to ⊗π, ⊗β (real beta!), ⊗↔, ⊗C, αβD, αβH, and ⊗R default
to operating on the entire page instead of a single file.

A "*" after the page number in the table below indicates the command is legal
in file-display mode.

		   Equivalent
Page  ⊗X Command    (if any)	Meaning

 27   ABORT	       ⊗C	Same as ⊗XCANCEL (see note 1)
 27   CANCEL	       ⊗C	Cancel all actions on one or more files (like
				  ⊗C for whole page, except if on Normal page
				  it cancels deletions, too) (see note 1)
 30*  CONTROL			Make next cmd char have only the CONTROL bit
 27   DELETE	      αβD	Delete one or more files (see note 1)
 29   DISPLAY			Same as ⊗XINFO
 29*  DPYALWAYS			Update the display after every command
 29*  DPYSKIP			Update the display only when no typeahead
 28*  DRAW	       ⊗V	Update the display now
 27*  EDIT	       ⊗ε	Switch to E in READWRITE mode (see note 2)
 27*  ENTER	       ⊗ε	Switch to E in READWRITE mode (see note 2)
 27*  EPSILON	       ⊗ε	Switch to E in READWRITE mode (see note 2)
 29*  EXACT			Distinguish case of letters in searches
 27*  EXAMINE	       ⊗∃	Display one window's worth of text from file
				  (see note 2)
 ??   F		       ⊗F	Search for string
 29   FAST			Display minimum info (special case of ⊗XINFO)
 ??   FIND	       ⊗F	Search for string
 29   FONT			Specify xspool FONT and XLINE parms (see note 2)
 28   FOONLY	       ⊗O	Write foonly-fmt file (same as ⊗XOUTPUT/FOONLY)
				  (see note 2)
 29   FULL			Display maximum info (special case of ⊗XINFO)
 30*  HEADER			Type out the header line (see note 3)
 29*  HEIGHT			Set the number of lines in the display window
 27*  HELP	       ⊗?	Display documentation
 28   HIDE	      αβH	Hide one or more files (see note 1); /REAPED=
				  hide reaped files, /-REAPED=hide non-reaped
 29   INFO			Modify selection of info to be displayed (if no
				  specs given, put current set into line-editor)
 28   INV	       ⊗I	Invert mask (show invisible files) (see note 1)
 28   INVERT	       ⊗I	Invert mask (show invisible files) (see note 1)
 28   INVISIBLE        ⊗I	Invert mask (show invisible files) (see note 1)
 27*  LAMBDA	       ⊗λ	Switch to E in READONLY mode
 27*  LOOKUP	       ⊗λ	Switch to E in READONLY mode
 28   MASK	      αβM	Change file mask
 30*  METACONTROL		Make next cmd char have both META & CONTROL bits
 27*  NEWS	     ⊗4⊗?	Display "news" page of documentation
 30*  NUMBERS			Enable/disable typing of line numbers with text
 28   OUTPUT	       ⊗O	Output page to file (see note 2); /FOONLY=foonly
				  format, /ALL=DSR included, /Q=WRTprv if needed
 29*  PARANOID			Don't do actions under any circumstances
 27   PI	       ⊗π	Reprotect on one or more files (see note 1)
 27   PROTECTION       ⊗π	Reprotect on one or more files (see note 1)
 29*  QUIT			Exit to monitor without doing actions
 29*  READONLY			Disallow changing the directory
 29*  READWRITE			Allow changing the directory
 27   REAP			Set reap bit for one or more files (see note 1)
 27   RENAME	       ⊗R	Rename one or more files (see note 1)
 29   REREAP	       		Discard all in-core data and reread directories
 28   REVERSED			Reverse order of sorting (same as ⊗XSORT/REV)
 28   SORT	       ⊗S	Specify sort keys or re-sort using current keys
 27   SPOOL	       ⊗↔	Spool one or more files (see note 1)
 30*  TITLES			Type titles from above info columns (see note 3)
 30*  TMPCOR			Write TMPCOR file upon exiting from DIRED
 30*  TRAILER			Type the trailer line (see note 3)
 30*  TYPE			Type out info for one or more files (see note 3)
 ??   UNDELETE         ⊗U	Reserved for later use
 ??   UNDO	       ⊗U	Reserved for later use
 27   UNREAP			Zero reap bit for one or more files (see note 1)
 29*  VERIFY			Require confirmation before changing directory

Note 1: The commands ABORT, CANCEL, DELETE, HIDE, INV, INVERT, INVISIBLE, PI,
	PROTECTION, REAP, RENAME, SPOOL, and UNREAP accept a wildcard filespec
	and operate only on files within the range of the numeric arg (whole
	page if no arg) which match the spec.  Form for PI, PROTECTION, and
	RENAME is, e.g., RENAME .OLD←.SAI[FOO,BAR] or PI +200←MUMBLE.*; form for
	SPOOL command is, .e.g., SPOOL XGP←*.XGP.

Note 2:	The commands EDIT, EPSILON, ENTER, EXAMINE, FONT, FOONLY, LAMBDA, LOOKUP
	and OUTPUT accept a non-wild filespec that (except for FONT) may include
	a device name.

Note 3:	The commands HEADER, TITLES, TRAILER, and TYPE accept either of the
	switches /ALL and /FULL; default is /FULL on displays and neither on
	non-displays.  With neither, output is restricted to currently selected
	info fields and to the width of the screen.  /ALL also restricts output
	to the selected fields but ignores screen width, and /FULL types all
	information.  (/ALL=/FULL for TRAILER; neither switch affects HEADER.)